package app.DAO;


import javax.ejb.Stateless;
import javax.inject.Inject;
import javax.persistence.EntityManager;
import javax.persistence.Query;

import app.entidad.Cuenta;
import app.entidad.Movimiento;


@Stateless
public class MovimientoDAO {
	@Inject	
	private EntityManager em;

	public void insertar(Movimiento m){
				
		em.persist(m);
		credito(new Integer(m.getCuentaDes()).intValue(),m.getMonto());
	}

	public Cuenta existeCuenta(long cntDe){
		
		return em.find(Cuenta.class, cntDe);
	}

	
	public void debito(int cuenta, double valor)
	{
		Query query = em.createNativeQuery("{call debito(:valor,:cuenta)}");
	    query.setParameter("valor", valor);
	    query.setParameter("cuenta",cuenta);
	    query.executeUpdate();
	}
	public void credito(int cuenta, double valor)
	{
		  Query query = em.createNativeQuery("{call credito(:valor,:cuenta)}");
	      query.setParameter("valor", valor);
	      query.setParameter("cuenta",cuenta);
	      query.executeUpdate();
	}
}